//app.js
App({
  onLaunch: function() {
    this.onCheckMinigram()
    if (!wx.cloud) {
      console.error('请使用 2.2.3 或以上的基础库以使用云能力')
    } else {
      wx.cloud.init({
        // env 参数说明：
        //   env 参数决定接下来小程序发起的云开发调用（wx.cloud.xxx）会默认请求到哪个云环境的资源
        //   此处请填入环境 ID, 环境 ID 可打开云控制台查看
        //   如不填则使用默认环境（第一个创建的环境）
        env: 'cloud-xx8w7',
        traceUser: true,
      })
    }
    this.globalData = {
      musicPlayingId: -1,
      openid: -1,
    }
    this.getOpenId()
  },
  loading(text) {
    wx.showLoading({
      title: text || '加载中',
    })
  },
  // 设置musicPlayingId
  setMusicPlayingId(musicId) {
    this.globalData.musicPlayingId = musicId
  },
  // 获取musicPlayingId
  getMusicPlayingId() {
    return this.globalData.musicPlayingId
  },
  // 获取用户openid
  getOpenId() {
    wx.cloud.callFunction({
      name: 'login',
    }).then((res) => {
      let openid = res.result.openid
      this.globalData.openid = openid
      if (wx.getStorageSync(openid) == '') {
        wx.setStorageSync(openid, [])
      }
    })
  },

  // 检查小程序是否是最新
  onCheckMinigram() {
    const updateManager = wx.getUpdateManager()

    updateManager.onCheckForUpdate(function(res) {
      // 请求完新版本信息的回调
      if (res.hasUpdate) {
        updateManager.onUpdateReady(function() {
          wx.showModal({
            title: '更新提示',
            content: '新版本已经准备好，是否重启应用？',
            confirmColor: '#cc0000',
            success: function(res) {
              if (res.confirm) {
                // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
                updateManager.applyUpdate()
              }
            }
          })
        })
      }
    })
  },
})